package com.ruoyi.record.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.record.domain.*;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * 职称申报Mapper接口
 * 
 * @author ruoyi
 * @date 2024-05-09
 */
@Repository
public interface RecordCompeteMapper extends BaseMapper<RecordCompete>
{

    /**
     * 查询职称申报列表
     * 
     * @param recordCompete 职称申报
     * @return 职称申报集合
     */
    public List<RecordCompete> selectRecordCompeteList(RecordCompete recordCompete);

    /**
     * 查询职称申报
     *
     * @param competeId 职称申报主键
     * @return 职称申报
     */
    public RecordCompete selectRecordCompeteByCompeteId(Long competeId);

    /**
     * 职称申报审批查询
     * @param recordCompete
     * @return
     */
    public List<RecordCompete> selectVerifyCompeteList(RecordCompete recordCompete);

    /**
     * 职称申报审批查询
     * @param recordCompete
     * @return
     */
    public List<RecordCompete> selectScoreCompeteList(RecordCompete recordCompete);

    /**
     * 通过申请记录主键删除申请内容信息
     *
     * @param competeId 申请记录ID
     * @return 结果
     */
    public int deleteRecordCompeteInfo1ByCompeteIds(Long[] competeId);

    /**
     * 通过申请记录主键删除申请内容信息
     *
     * @param competeId 申请记录ID
     * @return 结果
     */
    public int deleteRecordCompeteInfo2ByCompeteIds(Long[] competeId);

    /**
     * 通过申请记录主键删除申请内容信息
     *
     * @param competeId 申请记录ID
     * @return 结果
     */
    public int deleteRecordCompeteInfo3ByCompeteIds(Long[] competeId);

    /**
     * 通过申请记录主键删除申请内容信息
     *
     * @param competeId 申请记录ID
     * @return 结果
     */
    public int deleteRecordCompeteInfo1ByCompeteId(Long competeId);

    /**
     * 通过申请记录主键删除申请内容信息
     *
     * @param competeId 申请记录ID
     * @return 结果
     */
    public int deleteRecordCompeteInfo2ByCompeteId(Long competeId);

    /**
     * 通过申请记录主键删除申请内容信息
     *
     * @param competeId 申请记录ID
     * @return 结果
     */
    public int deleteRecordCompeteInfo3ByCompeteId(Long competeId);

    /**
     * 批量新增论文
     *
     * @param info1List 申请内容列表
     * @return 结果
     */
    public int batchRecordCompeteInfo1(List<RecordCompeteInfo1> info1List);

    /**
     * 批量新增论文
     *
     * @param info2List 申请内容列表
     * @return 结果
     */
    public int batchRecordCompeteInfo2(List<RecordCompeteInfo2> info2List);

    /**
     * 批量新增论文
     *
     * @param info3List 申请内容列表
     * @return 结果
     */
    public int batchRecordCompeteInfo3(List<RecordCompeteInfo3> info3List);
}
